home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / program / gemxx19.zoo / gem++19 / include / gemst.h < prev    next >
C/C++ Source or Header  |  1993-11-21  |  1KB  |  50 lines

  1. /////////////////////////////////////////////////////////////////////////////
  2. //
  3. //  GEMscrolltext
  4. //
  5. //  A GEMscrolltext is a GEMscrollableobject scrolling single-font text.
  6. //
  7. //  This file is Copyright 1993 by Warwick W. Allison,
  8. //  This file is part of the gem++ library.
  9. //  You are free to copy and modify these sources, provided you acknowledge
  10. //  the origin by retaining this notice, and adhere to the conditions
  11. //  described in the file COPYING.LIB.
  12. //
  13. /////////////////////////////////////////////////////////////////////////////
  14.  
  15.  
  16. #ifndef GEMst_h
  17. #define GEMst_h
  18.  
  19. #include <gemscro.h>
  20. #include <gemcha.h>
  21.  
  22. class GEMscrolltext : public GEMscrollableobject {
  23. public:
  24.     GEMscrolltext(GEMform&, int RSCindex, int width, int height);
  25.     ~GEMscrolltext();
  26.  
  27.     int TextWidth() { return w; }
  28.     int TextHeight() { return h; }
  29.  
  30.     void Put(char, int x, int y);
  31.     char CharAt(int x, int y) { return textline[y][x]; }
  32.     void Refresh();
  33.  
  34.     void ScrollText(int columns_right, int lines_down);
  35.     virtual void RedrawClipped(int x, int y, const GRect&);
  36.  
  37.     void AlignAtTop(bool yes=TRUE); // AlignTop(FALSE) initially.
  38.     virtual void Draw(const PARMBLK*);
  39.  
  40. private:
  41.     void SetRedrawFont();
  42.     int w,h;
  43.     bool top_aligned;
  44.     GEMchangearea change;
  45.     char** textline;
  46. };
  47.  
  48.  
  49. #endif
  50.